1. Field
Embodiments of the invention relate to a content management checklist object.
2. Description of the Related Art
A content management system (CMS), also known as an enterprise content management system (ECMS), may be described as a software system used to store and manage content objects in a computer system. The content objects stored and managed by the content management system consist of any type of computer files in any computer readable format, including text files, documents, picture files, video files, sound files, etc. In addition to files, the content management system may also manage other types of objects, including folders, versions, etc. In general, the files and other objects are called content objects. The content management system can maintain multiple versions of the content objects managed and meta-data for each content object. The content management system allows users (e.g., humans and machines) to create, access, modify, and delete content objects, among other operations. For content objects, such as files, the object repository contains metadata including the one or more locations of content elements that represent the actual content (e.g., text of a document object). The content elements may be stored in a separate storage repository, outside of the content management system.
In content management systems, a typical pattern is to wait for a set of content objects to be created or to reach a particular state to trigger (or raise) an action. Content objects include document objects, folder objects, and link objects. For example, in a car insurance claims processing system, implemented using a content management system, a set of documents have to be available for the claim to be processed. Such documents may include a first notice of loss, a police report, witness statements, etc. This pattern of waiting is common in different kinds of content management applications, programs or business processes in which documents or other content objects need to be created or reach a certain state for an action to be taken.
Content management applications are applications built using a content management system. For example, a vendor may sell a content management system, and the buyer may build a management application to solve a business problem using the content management system. A content management application is composed of one or more programs.
In conventional content management systems, a program (of a content management application) may wait for a set of one or more desired content objects. In such conventional content management systems, when a new content object is created or when an existing content object reaches a certain status, the program that is waiting checks on whether the new content object or changed existing content object fulfills the set of desired one or more content objects for which the program has been waiting. If the set of desired one or more content objects is fulfilled (i.e., all desired content objects have been received and reached the desired states), then, the program either processes the received one or more content objects or triggers another action. This is done in two modes: 1) a pull mode in which the program periodically (e.g., every few seconds, minutes, or hours) check for whether new content objects have been created or existing content objects have had their status changed or 2) a push mode in which the program listens to the events issued by the content management system and determines whether the content objects in the set of one or more desired content objects are available and/or have reached the desired state.
Such conventional solutions are inefficient because an external program has to keep track of the activity happening in the content management system to take the desired action.
Thus, there is a need for a content management checklist object.